package com.xxzuibang.day7;

/**
 * 1.如何创建对象：先声明再创建
 * Cat cat1=new Cat();
 *
 * 如何访问属性：
 * 对象名.属性名
 *
 * 类和对象的内存分配机制
 * java结构的内存分析
 * 1.栈：一般存放基本数据类型
 * 2.堆：存放对象（Cat cat 数组）
 * 3.方法区：常量池（比如字符串），类加载信息
 *
 * java创建爱你对象的流程
 * 1.先加载Person类的信息（属性和方法信息，只会加载一次）
 * 2.在堆中分配空间，进行默认初始化
 * 3.把地址赋给p1，p1就指向了对象
 * 4.进行制定初始化
 *
 */

public class Object04 {
    public static void main(String[] args) {
        Person1 p1 = new Person1();
        p1.age=10;
        p1.name="小明";
        Person1 p2=p1;//把p1赋给p2(让p2指向p1 )
        System.out.println(p2.age);//10
        System.out.println(p1);
        System.out.println(p2);


    }
}

class Person1{
    //属性
    int age;
    String name;
}
